package com.ophelisis.ibatis.handler;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import com.ophelisis.ibatis.SqlMapper;
import com.ophelisis.persistence.domain.ClientUserVO;

public class handler_user_client {
	/**
	 * 클라이언트 사용자 관리 - 목록
	 */
	@SuppressWarnings("unchecked")
	public static List<ClientUserVO> getClientUserList() throws SQLException {
		return SqlMapper.sqlMapClient.queryForList("user.getClientUserList");
	}
	
	@SuppressWarnings("unchecked")
	public static List<ClientUserVO> getClientUserList(Map<String, Object> params) throws SQLException {
		return SqlMapper.sqlMapClient.queryForList("user.getClientUserList", params);
	}

	/**
	 * 클라이언트 사용자 관리 - 목록 갯수
	 */
	public static Integer getClientUserListCnt() throws SQLException {
		return (Integer)SqlMapper.sqlMapClient.queryForObject("user.getClientUserListCnt");
	}
	
	public static Integer getClientUserListCnt(Map<String, Object> params) throws SQLException {
		return (Integer)SqlMapper.sqlMapClient.queryForObject("user.getClientUserListCnt", params);
	}

	/**
	 * 클라이언트 사용자 관리 - 정보
	 */
	public static ClientUserVO getClientUserInfo(Map<String, Object> params) throws SQLException {
		return (ClientUserVO)SqlMapper.sqlMapClient.queryForObject("user.getClientUserInfo", params);
	}

	/**
	 * 클라이언트 사용자 관리 - 상세
	 */
	@SuppressWarnings("unchecked")
	public static List<ClientUserVO> getClientUserDetail(Map<String, Object> params) throws SQLException {
		return SqlMapper.sqlMapClient.queryForList("user.getClientUserDetail", params);
	}

	/**
	 * 클라이언트 사용자 관리 - 삭제
	 */
	public static Integer setClientUserDelete(Map<String, Object> params) throws SQLException {
		return (Integer)SqlMapper.sqlMapClient.update("user.setClientUserDelete", params);
	}

	/**
	 * 클라이언트 사용자 관리 - 수정
	 */
	public static Integer setClientUserModify(ClientUserVO paramVO) throws SQLException {
		return (Integer)SqlMapper.sqlMapClient.update("user.setClientUserModify", paramVO);
	}

	/**
	 * 클라이언트 사용자 관리 - 등록
	 */
	public static Integer setClientUserAdd(ClientUserVO paramVO) throws SQLException {
		return (Integer)SqlMapper.sqlMapClient.update("user.setClientUserAdd", paramVO);
	}

	/**
	 * 클라이언트 사용자 관리 - 유무
	 */
	public static Integer existClientUser(Map<String, Object> params) throws SQLException {
		return (Integer)SqlMapper.sqlMapClient.queryForObject("user.existClientUser", params);
	}
}
